home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Champak 132
/
Vol 132.iso
/
games
/
nameless.swf
/
scripts
/
DefineSprite_3072
/
frame_1
/
DoAction.as
Wrap
Text File
|
2011-06-09
|
7KB
|
286 lines
if(!setVars)
{
var moveSpeed = 3;
var addSpeed = 0.5;
var gravity = 0;
var maxGravity = 8;
var airSpeed = 0.5;
var dropped = false;
var active = false;
var xTar = 0;
xscale = _xscale;
var attacking = false;
var hitSound = new Sound();
var die = false;
hitSound.attachSound("punch5");
var removeNum = 100;
var melt = false;
var startX = _X;
var startY = _Y;
var bat = false;
var health = 2;
var mNum = 0;
var setVars = true;
}
stop();
var getFrame = function()
{
if(die == true)
{
frame = "die";
}
else if(melt == true)
{
frame = "melt";
}
else if(bat == true)
{
frame = "hit";
}
else if(running == false && attacking == false && falling == false)
{
frame = "stand";
}
else if(falling == true)
{
frame = "stand";
}
else if(running == true)
{
frame = "run";
}
else if(attacking == true)
{
frame = "attack";
g.stop();
}
gotoAndStop(frame);
};
var onEnterFrame = function()
{
_root.checkVis(this);
if(_root.remake == true)
{
die = false;
melt = false;
removeNum = 100;
_X = startX;
_Y = startY;
active = false;
bat = false;
_visible = true;
_alpha = 100;
dropped = false;
health = 2;
}
if(_root.pauseMode == false)
{
if(active == true)
{
if(die == false && melt == false && bat == false)
{
if(_root.candy.hitTest(hit))
{
if(_root.candy.dir == "left")
{
_root.candy.dir = "right";
}
else
{
_root.candy.dir = "left";
}
hitSound.start();
hitSound.start();
if(health <= 0)
{
die = true;
}
else
{
health -= 1;
bat = true;
}
}
else if(_root.cm.g.hit.hitTest(hit))
{
hitSound.start();
if(health <= 0)
{
die = true;
}
else
{
health -= 1;
bat = true;
}
}
else if(_root.cm.g.sparkle.hitTest(hit))
{
melt = true;
}
if(attacking == false)
{
if(_root.cm._x > _X)
{
_xscale = - xscale;
}
else if(_root.cm._x < _X)
{
_xscale = xscale;
}
}
if(!bound.hitTest(_root.cm))
{
if(attacking == false)
{
running = true;
if(_root.cm._x > _X)
{
if(!_root.bound.hitTest(_X + xTar + addSpeed,_Y - 10,true))
{
xTar += addSpeed;
}
}
else if(_root.cm._x < _X)
{
if(!_root.bound.hitTest(_X - xTar - addSpeed,_Y - 10,true))
{
xTar -= addSpeed;
}
}
}
}
else
{
running = false;
if(xTar > 0)
{
xTar -= addSpeed;
}
else if(xTar < 0)
{
xTar += addSpeed;
}
mNum++;
num = random(60);
if((num == 1 or mNum == 40) && attacking == false && falling == false && running == false)
{
mNum = 0;
attacking = true;
}
}
}
else
{
if(removeNum < 0)
{
if(_alpha > 0)
{
_alpha = _alpha - 1;
}
else
{
_visible = false;
}
}
else
{
removeNum -= 1;
}
if(xTar > 0)
{
xTar -= addSpeed;
}
else if(xTar < 0)
{
xTar += addSpeed;
}
}
if(xTar > moveSpeed)
{
xTar = moveSpeed;
}
else if(xTar < - moveSpeed)
{
xTar = - moveSpeed;
}
if(_root.bound.hitTest(_X,_Y + 1,true))
{
falling = false;
}
else
{
falling = true;
}
if(falling == true)
{
grav = 0;
switched = false;
i = 0;
while(i < gravity)
{
if(switched == false)
{
if(_root.bound.hitTest(_X,_Y + i,true))
{
switched = true;
}
else
{
grav = i;
}
}
i++;
}
_Y = _Y + i;
if(gravity < maxGravity)
{
gravity += airSpeed;
}
}
else
{
gravity = 0;
}
while(_root.bound.hitTest(_X,_Y - 0.5,true))
{
_Y = _Y - 0.5;
}
_X = _X + xTar;
if((die == true or melt == true) && g._currentframe == g._totalframes)
{
g.stop();
}
else
{
g.play();
}
}
if(_root.cam.hitTest(this))
{
active = true;
}
if(die == true && dropped == false)
{
if(_root.health < 100)
{
dropNum = random(5);
if(dropNum == 1)
{
_root.dropNum += 1;
_root.attachMovie("healthbox","healthbox" + _root.dropNum,_root.dropNum);
eval("_root.healthbox" + _root.dropNum)._x = _X;
eval("_root.healthbox" + _root.dropNum)._y = _Y;
}
}
dropped = true;
}
}
else
{
stop();
g.stop();
}
getFrame();
};